#pragma once
#include "typedefine.h"

typedef struct _t_skydate
{
	UInt16 year;
	UInt16 month;
	UInt16 day;
	UInt16 hour;
	UInt16 minute;
	UInt16 second;
	UInt16 ms;
}t_skydate, SkyDate;

typedef struct _t_skyTimerInfo
{
	Int32 delta;
	void* param;
}t_skyTimerInfo, SkyTimerInfo;

typedef bool SkyTimerCallback(SkyTimerInfo*);

typedef void* SkyTimer;

#ifdef __cplusplus
extern "C"
{
#endif

	SkyTimer	sky_timer_open(Int32 millisecond, SkyTimerCallback *func, void *param = 0);
	bool		sky_timer_close(SkyTimer inst);
	Int32		sky_timer_get_msticks(SkyTimer inst);
	bool		sky_timer_set_msticks(SkyTimer inst, Int32 ms);
	bool		sky_timer_stop(SkyTimer inst);
	SkyTimer sky_app_timer_open(Int32 millisecond, SkyTimerCallback* func, void* pParam);
	bool sky_app_timer_close(SkyTimer inst);
#ifdef __cplusplus
}
#endif
